
#ifndef _PROCESSROUTER_PACKAGEFILTER_H_
#define _PROCESSROUTER_PACKAGEFILTER_H_

#include "channel.h"
#include "message_struct.pb.h"
#include "rf/event/RFEventManager.h"
#include "rf/event/RFTimerFired.h"
#include "rf/event/rooftop_event.h"

namespace ProcessRouter {

class PackageEvent : public Rooftop::EventBase {
    public:
        PackageEvent(CMessage message);
        ~PackageEvent() {};

        MessagePackage &package() { return m_package; }

        CMessage &message() { return m_message; }

    private:
        MessagePackage m_package;
        CMessage m_message;
};

class PackageFilter {
    public:
        PackageFilter() {}
        ~PackageFilter() {}

        bool dispatch(CMessage message, bool verify);

};

}

#endif

